package org.groupg.practice;

import net.sf.jsqlparser.JSQLParserException;
import net.sf.jsqlparser.expression.StringValue;
import net.sf.jsqlparser.parser.CCJSqlParserUtil;
import net.sf.jsqlparser.schema.Column;
import net.sf.jsqlparser.statement.update.Update;
import net.sf.jsqlparser.statement.update.UpdateSet;

public class UpdateModifier {
    public static void main(String[] args) throws JSQLParserException {
        String sql = "UPDATE users SET name = 'John' WHERE id = 1";

        Update update = (Update) CCJSqlParserUtil.parse(sql);

        // 添加新的SET子句
        UpdateSet newSet = new UpdateSet();
        newSet.add(new Column("status"));
        newSet.add(new StringValue("active"));
        update.getUpdateSets().add(newSet);

        // 修改WHERE条件
        update.setWhere(CCJSqlParserUtil.parseCondExpression("id = 1 AND active = true"));

        System.out.println("修改后SQL: " + update);
        // 输出: UPDATE users SET name = 'John', status = 'active' WHERE id = 1 AND active = true
    }
}
